#ifndef __GVMT_OBJECTS_T_H
#define __GVMT_OBJECTS_T_H

#include <inttypes.h>
#include "gvmt/gvmt.h"
typedef GVMT_OBJECT(bytearray) *R_bytearray;
typedef GVMT_OBJECT(module_dict_values) *R_module_dict_values;
typedef GVMT_OBJECT(binary_pred_api) *R_binary_pred_api;
typedef GVMT_OBJECT(static_method) *R_static_method;
typedef GVMT_OBJECT(binary_api) *R_binary_api;
typedef GVMT_OBJECT(generator) *R_generator;
typedef GVMT_OBJECT(dict) *R_dict;
typedef GVMT_OBJECT(partial_operator) *R_partial_operator;
typedef GVMT_OBJECT(unary_api) *R_unary_api;
typedef GVMT_OBJECT(bound_method) *R_bound_method;
typedef GVMT_OBJECT(str_buf) *R_str_buf;
typedef GVMT_OBJECT(trace_record) *R_trace_record;
typedef GVMT_OBJECT(Thread) *R_Thread;
typedef GVMT_OBJECT(builtin_function) *R_builtin_function;
typedef GVMT_OBJECT(list) *R_list;
typedef GVMT_OBJECT(objint_api) *R_objint_api;
typedef GVMT_OBJECT(tupleiterator) *R_tupleiterator;
typedef GVMT_OBJECT(comparison_operator) *R_comparison_operator;
typedef GVMT_OBJECT(set) *R_set;
typedef GVMT_OBJECT(bytes) *R_bytes;
typedef GVMT_OBJECT(dict_values) *R_dict_values;
typedef GVMT_OBJECT(module) *R_module;
typedef GVMT_OBJECT(info_item0) *R_info_item0;
typedef GVMT_OBJECT(getset_wrapper) *R_getset_wrapper;
typedef GVMT_OBJECT(info_item1) *R_info_item1;
typedef GVMT_OBJECT(type_state) *R_type_state;
typedef GVMT_OBJECT(listiterator) *R_listiterator;
typedef GVMT_OBJECT(array) *R_array;
typedef GVMT_OBJECT(objintobj_api) *R_objintobj_api;
typedef GVMT_OBJECT(slice) *R_slice;
typedef GVMT_OBJECT(code_object) *R_code_object;
typedef GVMT_OBJECT(dict_descriptor) *R_dict_descriptor;
typedef GVMT_OBJECT(len_api) *R_len_api;
typedef GVMT_OBJECT(Constants) *R_Constants;
typedef GVMT_OBJECT(bytelist) *R_bytelist;
typedef GVMT_OBJECT(Lexer) *R_Lexer;
typedef GVMT_OBJECT(dict_iterator) *R_dict_iterator;
typedef GVMT_OBJECT(hashtable) *R_hashtable;
typedef GVMT_OBJECT(frozen_type_info) *R_frozen_type_info;
typedef GVMT_OBJECT(class_descriptor) *R_class_descriptor;
typedef GVMT_OBJECT(range_iterator) *R_range_iterator;
typedef GVMT_OBJECT(thread_state) *R_thread_state;
typedef GVMT_OBJECT(base_function) *R_base_function;
typedef GVMT_OBJECT(class_method) *R_class_method;
typedef GVMT_OBJECT(range) *R_range;
typedef GVMT_OBJECT(int_slot_descriptor) *R_int_slot_descriptor;
typedef GVMT_OBJECT(mini_frame) *R_mini_frame;
typedef GVMT_OBJECT(inference) *R_inference;
typedef GVMT_OBJECT(exception_handler) *R_exception_handler;
typedef GVMT_OBJECT(float) *R_float;
typedef GVMT_OBJECT(guard) *R_guard;
typedef GVMT_OBJECT(scopes) *R_scopes;
typedef GVMT_OBJECT(operator) *R_operator;
typedef GVMT_OBJECT(dict_proxy_iterator) *R_dict_proxy_iterator;
typedef GVMT_OBJECT(info_item2) *R_info_item2;
typedef GVMT_OBJECT(info_item3) *R_info_item3;
typedef GVMT_OBJECT(new_api) *R_new_api;
typedef GVMT_OBJECT(binary_r_api) *R_binary_r_api;
typedef GVMT_OBJECT(unary_pred_api) *R_unary_pred_api;
typedef GVMT_OBJECT(NotImplementedType) *R_NotImplementedType;
typedef GVMT_OBJECT(ellipsis) *R_ellipsis;
typedef GVMT_OBJECT(dict_keys) *R_dict_keys;
typedef GVMT_OBJECT(BaseException) *R_BaseException;
typedef GVMT_OBJECT(char_array) *R_char_array;
typedef GVMT_OBJECT(frame) *R_frame;
typedef GVMT_OBJECT(Condition) *R_Condition;
typedef GVMT_OBJECT(function) *R_function;
typedef GVMT_OBJECT(int_vector) *R_int_vector;
typedef GVMT_OBJECT(str_iterator) *R_str_iterator;
typedef GVMT_OBJECT(dict_table) *R_dict_table;
typedef GVMT_OBJECT(deferred_state) *R_deferred_state;
typedef GVMT_OBJECT(setitem_api) *R_setitem_api;
typedef GVMT_OBJECT(type) *R_type;
typedef GVMT_OBJECT(compare_api) *R_compare_api;
typedef GVMT_OBJECT(hash_api) *R_hash_api;
typedef GVMT_OBJECT(method_api) *R_method_api;
typedef GVMT_OBJECT(deferred) *R_deferred;
typedef GVMT_OBJECT(str) *R_str;
typedef GVMT_OBJECT(specialiser) *R_specialiser;
typedef GVMT_OBJECT(traceback) *R_traceback;
typedef GVMT_OBJECT(slot_descriptor) *R_slot_descriptor;
typedef GVMT_OBJECT(file) *R_file;
typedef GVMT_OBJECT(call_descriptor) *R_call_descriptor;
typedef GVMT_OBJECT(tuple) *R_tuple;
typedef GVMT_OBJECT(dict_values_iterator) *R_dict_values_iterator;
typedef GVMT_OBJECT(complex) *R_complex;
typedef GVMT_OBJECT(bool) *R_bool;
typedef GVMT_OBJECT(type_info) *R_type_info;
typedef GVMT_OBJECT(deferred_frame) *R_deferred_frame;
typedef GVMT_OBJECT(unary_operator) *R_unary_operator;
typedef GVMT_OBJECT(binary_operator) *R_binary_operator;
typedef GVMT_OBJECT(trace) *R_trace;
typedef GVMT_OBJECT(object) *R_object;
typedef GVMT_OBJECT(int_iterator) *R_int_iterator;
typedef GVMT_OBJECT(dict_proxy) *R_dict_proxy;
typedef GVMT_OBJECT(Lock) *R_Lock;
typedef GVMT_OBJECT(exec_link) *R_exec_link;
typedef GVMT_OBJECT(mono_exec_link) *R_mono_exec_link;
typedef GVMT_OBJECT(poly_exec_link) *R_poly_exec_link;
typedef GVMT_OBJECT(BasicBlock) *R_BasicBlock;
typedef GVMT_OBJECT(NoneType) *R_NoneType;
#endif
